//
//  XGHomeTableViewController.swift
//  WeIBo
//
//  Created by 苏文潇 on 2017/3/4.
//  Copyright © 2017年 苏文潇. All rights reserved.
//

import UIKit
import YYModel

//      cell重用标记
private let XGHomeTableCell: String = "XGHomeTableCell"

class XGHomeTableViewController: XGVisitorViewController {


//    MARK: 懒加载控件
//    fileprivate lazy var statusList: [XGStatusModel] = [XGStatusModel]()
    
    
    //    MARK:添加viewModel
    fileprivate lazy var statusViewModel: XGHomeStatusViewModel = XGHomeStatusViewModel()
    
    
    override func viewDidLoad() {
        super.viewDidLoad()

        if isLogin == false
        {
            visitorView?.exchangeVisitorView(imageName: nil, title: nil)
        }
        else
        {
            loadData()
            tableViewDisplay()
        }
        
        
    }

//    MARK: tableView的展示
    private func tableViewDisplay(){
        
//        tableView.dataSource = self
        tableView.register(XGStatusTableViewCell.self, forCellReuseIdentifier: XGHomeTableCell)
        
        tableView.rowHeight = 200
    }
   
//    MARK:  数据加载
    private func loadData(){
        
        statusViewModel.loadData { (isSucess) in
            
            if isSucess
            {
                self.tableView.reloadData()
            }
            
        }
//        XGAFNetworkingTools.sharedTools.statusMessage { (response, error) in
//            if error != nil {
//                print(error!)
//                return
//            }
//            
//            let dic = response as! [String: Any]
//            
//            let dataArray = dic["statuses"] as! [[String: Any]]
//            
////            var arrarList = [XGStatusModel]()
////            for arrayDic in dataArray
////            {
//////                 字典转模型
//////                let status = XGStatusModel(dic: arrayDic)
////                
////                arrarList.append(status)
////            }
//            
//              let status = NSArray.yy_modelArray(with: XGStatusModel.self, json: dataArray) as! [XGStatusModel]
////            将数据存入到全局数组保存
//            self.statusList = status
//            
//            self.tableView.reloadData()
//        }
        
    }
    
    

}

extension XGHomeTableViewController {
    
    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return statusViewModel.statusList.count
    }
    
//      大哥，自定义cell的时候一定要改注册中的cell呀！  否则就出大错了
    override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        
        let cell = tableView.dequeueReusableCell(withIdentifier:XGHomeTableCell, for: indexPath) as! XGStatusTableViewCell
    
//        cell.textLabel?.text = self.statusList[indexPath.row].text
//        cell.textLabel?.text = self.statusList[indexPath.row].user?.screen_name
//        cell.statusViewModel = 
        cell.statusViewModel = statusViewModel.statusList[indexPath.row]
        
        return cell
    }
    
}







